openapi: 3.0.1
info:
  title: DA - ePlanning to Council API
  description: Development Application Council API.
  version: v2
externalDocs:
  description: Find out more about the DA process
  url: >-
    https://www.planning.nsw.gov.au/Assess-and-Regulate/Development-Assessment/Your-guide-to-the-DA-process
servers:
  - url: https://api-uat.apps1.nsw.gov.au/planning/councils/v2
tags:
  - name: Development Application
    externalDocs:
      description: Find out more about the DA process
      url: >-
        https://www.planning.nsw.gov.au/Assess-and-Regulate/Development-Assessment/Your-guide-to-the-DA-process
paths:
  /CreateDA/{CaseID}:
    post:
      summary: CreateDA
      description: >-
        This operation transfers the development application details entered by
        the applicant from the Online DA Service to the council's IT system.
      parameters:
        - name: CaseID
          in: path
          description: A fully qualified application number
          required: true
          schema:
            type: string
        - name: OrganisationID
          in: header
          description: >-
            Used by the API gateway to route the request to the relevant
            council.
          required: true
          schema:
            type: string
        - name: IdempotencyId
          in: header
          description: >-
            Unique Id for this request. Allows the API to respond in an
            idempotent way if it has already been called with these parameters
            and prevents duplicate processing. Typically a UUID such as
            "63a9ba30-7a4b-4fac-b343-d1f05cf089f1"
          required: true
          schema:
            type: string
      requestBody:
        description: Information request object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/DA'
        required: true
      responses:
        '201':
          description: DA created
          content: {}
        '400':
          description: Invalid request supplied
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/Error'
        '412':
          description: DA already exists
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/Error'
        '422':
          description: Mandatory field values not provided
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/Error'
      x-codegen-request-body-name: body
  /UpdateDA/{CaseID}:
    put:
      summary: UpdateDA
      description: >-
        This operation updates the development application details entered by
        the applicant from the Online DA Service to the council's IT system.
      parameters:
        - name: CaseID
          in: path
          description: A fully qualified application number
          required: true
          schema:
            type: string
        - name: OrganisationID
          in: header
          description: >-
            Used by the API gateway to route the request to the relevant
            council.
          required: true
          schema:
            type: string
        - name: IdempotencyId
          in: header
          description: >-
            Unique Id for this request. Allows the API to respond in an
            idempotent way if it has already been called with these parameters
            and prevents duplicate processing. Typically a UUID such as
            "63a9ba30-7a4b-4fac-b343-d1f05cf089f1"
          required: true
          schema:
            type: string
      requestBody:
        description: Information request object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateDA'
        required: true
      responses:
        '201':
          description: DA created
          content: {}
        '400':
          description: Invalid request supplied
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/Error'
        '412':
          description: DA already exists
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/Error'
        '422':
          description: Mandatory field values not provided
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/Error'
      x-codegen-request-body-name: body
  /RequestOperationalConsent/{CaseID}:
    put:
      summary: RequestOperationalConsent
      description: >-
        This operation transfers additional information uploaded by the
        applicant (for an existing DA) from the Online DA Service to the
        council's IT system. This additional information can either be requested
        by council or provided voluntarily by the applicant.
      parameters:
        - name: CaseID
          in: path
          description: A fully qualified application number.
          required: true
          schema:
            type: string
        - name: OrganisationID
          in: header
          description: >-
            Used by the API gateway to route the request to the relevant
            council.
          required: true
          schema:
            type: string
        - name: IdempotencyId
          in: header
          description: >-
            Unique Id for this request. Allows the API to respond in an
            idempotent way if it has already been called with these parameters
            and prevents duplicate processing. Typically a UUID such as
            "63a9ba30-7a4b-4fac-b343-d1f05cf089f1"
          required: true
          schema:
            type: string
      requestBody:
        description: Information request object
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/OperationalConsent'
        required: true
      responses:
        '200':
          description: Operational Consent provided
          content: {}
        '400':
          description: Invalid request supplied
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: DA not found
          content:
            '*/*':
              schema:
                $ref: '#/components/schemas/Error'
      x-codegen-request-body-name: body
components:
  schemas:
    DA:
      required:
        - applicant
        - caseStatus
        - developmentSiteOwner
        - commonApplicationTypes
        - ownerDetails
        - siteAddresses
        - updatedBy
      type: object
      properties:
        caseStatus:
          maxLength: 80
          type: string
          description: Status of the DA case
          example: Pending Lodgement
          minLength: 1
        caseSubmittedDate:
          type: string
          description: >-
            This is to track the date when the applicant submitted the
            application.
        contributionDetails:
          type: array
          description: >-
            This is to track the infrastructure contribution's case details
            associated to the development.
          items:
            $ref: '#/components/schemas/contributionDetails'
        applicant:
          $ref: '#/components/schemas/Applicant'
        developmentSiteOwner:
          type: string
          description: >-
            This is to track the development site owner type. One of the below
            mentioned values must be selected for development site owner type.
            1. APPLICANT_OWNED 2. MULTI_PLUS_APPLICANT 3. MULTI_EXCL_APPLICANT
            4. COMPANY_OWNED
          example: Refer to description for values.
          minLength: 1
        securityConditions:
          type: boolean
          description: >-
            This is to track whether there are any security or site conditions
            which may have impact on the person undertaking the inspection.
        detailsOfSecurityConditions:
          type: string
          description: >-
            This is to track the details of security conditions. Visible only if
            securityConditions is true.
        developerDetails:
          $ref: '#/components/schemas/developerDetails'
        ownerDetails:
          type: array
          items:
            $ref: '#/components/schemas/Owner'
        ownersConsentDeclaration:
          type: boolean
          description: This is to track the declaration done by applicant.
        applicationType:
          type: string
          description: >-
            This is to track the type of the application. One of the below
            mentioned values must be selected for the type of the application.
            1. DA 2. MODIFICATION 3. REVIEW
          example: Refer to description for values.
        councilDANumber:
          maxLength: 20
          type: string
          description: >-
            This is to track the unique council DA number. Required if the
            application has been accepted for lodgement by the council.
        modificationType:
          type: string
          description: >-
            This is to track the type of modification. Required if the
            applicationType is "Modification application". One of the below
            mentioned values must be selected for modification type. 1.
            MOD_MINOR 2. MOD_ENV_IMPACT 3. MOD_LEC 4. MOD_OTHERS
          example: Refer to description for values.
        originalDADeterminationDate:
          type: string
          description: This is to track the date when the original DA was determined.
        existingDANumber:
          maxLength: 20
          type: string
          description: >-
            This is to track the existing DA number upon which modification or
            review application is proposed. Required if the applicationType is
            MODIFICATION or REVIEW. This is applicable for the applications that
            are submitted offline.
        existingDADeterminationDate:
          type: string
          description: >-
            This is to track the existing DA determination date upon which
            review application is proposed. Required if the applicationType is
            Review. UI field is "Date of determination".
        proposedModificationDescription:
          maxLength: 1500
          type: string
          description: >-
            This is to track the existing DA determination date upon which
            modification application is proposed.Required if the applicationType
            is MODIFICATION.
        isExistingOnlineDA:
          type: boolean
          description: >-
            This is to track if the existing DA applied was via the NSW Planning
            Portal.
        existingOnlinePANNumber:
          type: string
          description: >-
            This is to track the portal application number (PAN). This is
            applicable for the applications that are submitted through planning
            portal ('When applicant answers 'Yes' to the question 'Was the DA
            applied for via the NSW Planning portal') for the application type 
            MODIFICATION or REVIEW.
        siteAddresses:
          type: array
          items:
            $ref: '#/components/schemas/Location'
        commonApplicationTypes:
          type: array
          items:
            $ref: '#/components/schemas/CommonApplicationType'
          description: >-
            This is to track the common Application types. Example values are 1.
            Advertising and signage 2. Alterations or additions to an existing
            building or structure 3. Change of use of land or a building or the
            classification of a building under the Building Code of Australia 4.
            Demolition 5. Erection of a new structure 6. Hours of operation and
            trading 7. Subdivision 8. Temporary building, structure or use
        developmentTypes:
          type: array
          items:
            $ref: '#/components/schemas/DevelopmentType'
        isDevelopmentIncludeAffordableHousing:
          type: boolean
          description: >-
            This is to track if the development includes affordable housing when
            applicable.
        isApplicationForInfillAffordableHousing:
          type: boolean
          description: >-
            This is to track if the application is submitted for infill
            affordable housing. This is applicable when
            'isDevelopmentIncludeAffordableHousing' is true.
        boardingHouseRegCommunityProviderName:
          maxLength: 512
          type: string
          description: >-
            This is to track the registered community housing provider who will
            be managing the boarding house.
        regCommunityHousingProviderName:
          maxLength: 512
          type: string
          description: >-
            This is to track the name of the registered community housing
            provider that will be managing the affordable housing component of
            the site. This is applicable for the development type "Boarding
            house" or when 'isDevelopmentIncludeAffordableHousing' is true.
        isBuildToRentHousing:
          type: boolean
          description: >-
            This is to track if the development proposed to be build-to-rent
            housing when applicable.
        relevantEPI:
          type: array
          description: >-
            This is to track the relevant environmental planning instrument. eg.
            LEP, SEPP
          items:
            $ref: '#/components/schemas/RelevantEPIList'
        isPoolSpa40KlitersProposed:
          type: boolean
          description: >-
            This is to track if the pool is more than 40K in capacity.This is
            applicable for 'Pools / decks / fencing' development type.
        developmentDescription:
          maxLength: 1500
          type: string
        numDwellingsUnitsProposed:
          type: integer
          description: >-
            This is to track the number of dwellings / units proposed when
            applicable.
        numStoreysProposed:
          type: integer
          description: This is to track the number of storeys proposed when applicable.
        numPreExistingDwellings:
          type: integer
          description: >-
            This is to track the number of pre-existing dwellings on site when
            applicable.
        numDwellingsDemolished:
          type: integer
          description: >-
            This is to track the number of dwellings to be demolished when
            applicable.
        numExistingFloorArea:
          type: integer
          description: >-
            This is to track the existing gross floor area (sqm) when
            applicable.
        numProposedGrossFloorArea:
          type: integer
          description: >-
            This is to track the proposed gross floor area (sqm) when
            applicable.
        numExistingSiteArea:
          type: integer
          description: >-
            This is to track the total (existing) site area (sqm) when
            applicable.
        islowRentalDwellingLossDevelopment:
          type: boolean
          description: >-
            This is to track if the development results in a loss of low rental
            dwellings. This is applicable and mandatory for any development type
            that belongs to the residential category.
        isNaturalDisaster:
          type: boolean
          description: >-
            This is to track if this application is direct result of a matter
            declared by the government to be an emergency and/or a natural
            disaster (for example, an application for re-building a home
            destroyed by bushfire).
        costOfDevelopment:
          type: number
          description: This is to track the Estimated development cost, including GST.
        capitalInvestmentValue:
          type: number
          maxLength: 15
          description: >-
            This is to track the Estimated development cost. Previously, this
            field was referring the Capital investment value.
        havemoreBASIX:
          type: boolean
          description: >-
            This is to track if the applicant has one or more BASIX certificates
            when applicable.
        basixCertificateNumbers:
          type: array
          items:
            $ref: '#/components/schemas/BasixCertificateList'
        numExistingLots:
          type: integer
          description: >-
            This is to track the number of existing lots.This is applicable when
            'Subdivision' is one of the values for 'commonApplicationTypes'.
        subdivisionTypes:
          type: array
          description: >-
            This is to track the types of subdivision referred in the
            application. This is applicable when 'Subdivision' is one of the
            values for 'commonApplicationTypes'.
          items:
            $ref: '#/components/schemas/SubdivisionType'
        devCategoryForParkingSpaces:
          type: array
          description: >-
            This is to track the number of parking spaces for application. If
            the development includes car share parking or other types of parking
            that are not easily defined, 'Other' value under the category
            development is used.
          items:
            $ref: '#/components/schemas/devCategoryForParkingSpaces'
        numProposedLots:
          type: integer
          description: >-
            This is to track the number of proposed lots. This is applicable
            when 'Subdivision' is one of the values for
            'commonApplicationTypes'.
        numStaff:
          type: integer
          description: >-
            This is to track the number of proposed staff/employees when
            applicable.
        numParkingSpaces:
          type: integer
          description: This is to track the number of parking spaces.
        numLoadingBays:
          type: integer
          description: This is to track the number of loading bays when applicable.
        isNewRoadProposed:
          type: boolean
          description: This is to track if new road is proposed.
        proposedRoadWorkDescription:
          maxLength: 1500
          type: string
        isStagedDevelopment:
          type: boolean
          description: >-
            This is to track if the development is a staged development or a
            concept only development.
        isConceptDevelopment:
          type: boolean
          description: >-
            This is to track if the development is a concept development only.
            This is applicable when (isStagedDevelopment = true).
        stagedDevelopmentDescription:
          maxLength: 1500
          type: string
          description: >-
            This is to track the description for the proposed concept
            application and/or the staging of the development. Applicable if
            'isConceptDevelopment' is true.
        climateZones:
          type: array
          description: >-
            This attribute is obsolete. This is to track for the development's
            location according to the guidelines set by the Australian Building
            Code Boards. Please refer to the example values below 1. Climate
            zone 1 – high humidity summer, warm winter 2. Climate zone 2 – warm
            humid summer, mild winter 3. Climate zone 3 – hot dry summer, warm
            winter 4. Climate zone 4 – hot dry summer, cool winter 5. Climate
            zone 5 – warm temperate 6. Climate zone 6 – mild temperate 7.
            Climate zone 7 – cool temperate 8. Climate zone 8 - alpine
          items:
            $ref: '#/components/schemas/climateZones'
        isClimateZoneImpactedDevDesign:
          type: boolean
          description: >-
            This attribute is obsolete. This is to track if the climate Zone has
            impacted the design of the development.
        climateZoneImpactedDevDesignReason:
          type: string
          maxLength: 500
          description: >-
            This attribute is obsolete. This is to track the reason for the
            specific impact of the climate zone on the development design.
        isCrownDevelopment:
          type: boolean
          description: This is to track if this is a proposed crown development.
        crownDevelopmentNSWAgency:
          maxLength: 100
          type: string
        isSubjectToWildernessProtectionAgreement:
          type: boolean
          description: >-
            This indicates if the development on land which is subject to a
            wilderness protection agreement or conservation agreement within the
            meaning of the Wilderness Act 1987.
        isIntegratedDevelopment:
          type: boolean
        integratedDevelopmentTypes:
          type: array
          items:
            $ref: '#/components/schemas/IntegratedDevelopmentType'
        designatedDevelopment:
          type: boolean
        doesImpactHabitat:
          type: boolean
          description: >-
            This is to track if the threatened species, populations, ecological
            communities or their critical habitats are likely impacted with the
            development proposal.
        isBiodiversityCompliantDevelopment:
          type: boolean
          description: This is to track if the development is biodiversity compliant.
        reasonForBiodiversityDevelopment:
          type: string
          maxLength: 2000
          description: >-
            This is to track the reason, the development is biodiversity
            compliant. This is applicable, when the applicant chooses ‘Yes’ for
            the question ‘Is this application for biodiversity compliant
            development’.
        isSubjectToPrivateLandConservationAgreement:
          type: boolean
          description: >-
            This is to track if the application is subject to a private land
            conservation agreement under the Biodiversity Conservation Act 2016?
        doesVaryLEP:
          type: boolean
          description: >-
            This is to track if the application proposes a variation to a
            development standard in an environmental planning instrument (eg LEP
            or SEPP).
        LEPVariation:
          $ref: '#/components/schemas/LEPVariation'
        isApplicationVPA:
          type: boolean
          description: >-
            This is to track if the application accompanied by a Voluntary
            Planning Agreement (VPA).
        vpaDetails:
          type: array
          items:
            $ref: '#/components/schemas/VPADetail'
        actsApplicable:
          type: array
          description: >-
            This is to track the information about the specific Acts that apply
            to the application. This becomes applicable when threatened species,
            populations, ecological communities or their critical habitats are
            likely impacted with the development proposal ( when
            doesImpactHabitat is true ).
          items:
            $ref: '#/components/schemas/ActsApplicable'
        isLGAS68ApprovalReq:
          type: boolean
          description: >-
            This is to track if approval under S68 of the Local Government Act
            1993 is required.
        isTreeWorksReq:
          type: boolean
          description: This is to track if tree removal and/or pruning work is proposed.
        treeRemovalDescription:
          type: string
          description: >-
            This is to track the descripton for treeremoval. Visible only when
            IsTreeWorksReq is selected as true.
        areaImpacted:
          type: number
          description: >-
            This is to track the area which has got impacted. Visible only when
            IsTreeWorksReq is selected as true.
        impactedLandUnits:
          type: string
          description: >-
            This is to track the impacted land units if tree works are involved.
            Visible only when IsTreeWorksReq is slected as true.
          example: Refer to description for values.
        treesImpacted:
          type: number
          description: >-
            This is to track the number of trees impacted.Visible only when
            IsTreeWorksReq is selected as true.
        areaUnit:
          type: string
          description: >-
            This is to track the units of area.Visible only when IsTreeWorksReq
            is selected as true.
        areaOfCanopy:
          type: number
          description: >-
            This is to track the area of canopy.Visible only when IsTreeWorksReq
            is selected as true.
        isS68Applied:
          type: boolean
          description: >-
            This is to track if applicant applied for approval under S68 of the
            Local Government Act. Visible only when isS68LGActApprovalReq is
            selected as yes. If IsS68Applied selected as No then approval must
            be applied under s68 of the Local Government Act with the council.
        applyForApprovalUnderS68:
          type: boolean
          description: >-
            This is to track if approval is sought under S68 of the Local
            Government Act. Visible only when isS68Applied is selected as no.
            Upon application submission online, system will automatically create
            a draft Section 68 of the Local Government Act application form and
            submit to council.
        hasOnlines68Case:
          type: boolean
          description: >-
            This is to track if application for S68 is applied via NSW planning
            Portal or not. Visible only when isS68Applied is selected as yes.
        s68RefNumber:
          type: string
          description: >-
            This is to track the portal reference number. It is visible only
            when HasOnlines68Case is selected as yes.
        s68RelatedRefNo:
          type: string
          description: >-
            Used to select s68 reference number related to this application.
            Visible only when HasOnlines68Case is selected as no.
        doesIncludeHeritageArea:
          type: boolean
          description: >-
            This is to track if the development site included as an item of
            environmental heritage or sits within a heritage conservation area.
        doesIncludeHeritageBuilding:
          type: boolean
          description: >-
            This is to track if the work proposed includes any heritage listed
            buildings.
        doesIncludeHeritageTreeRemoval:
          type: boolean
          description: This is to track if heritage tree removal proposed.
        isApplicantCouncilMember:
          type: boolean
          description: >-
            This is to track if the applicant or owner is a staff member of the
            organisation assessing the application.
        applicantCouncilRoleDescription:
          maxLength: 1500
          type: string
          description: >-
            This is to track the description provided(name of person, role in
            council).
        isApplicantRelatedToCouncil:
          type: boolean
          description: >-
            This is to track if the applicant or owner have a relationship with
            any staff of the organisation assessing the application.
        applicantCouncilRelationDescription:
          maxLength: 1500
          type: string
          description: >-
            This is to track the description provided(name of person, role in
            council, relationship to the person).
        anyPoliticalDonation:
          type: boolean
          description: >-
            This is to track if the applicant is aware of any person who has
            financial interest in the application who has made a political
            donation or gift in the last two years.
        politicalDonation:
          type: object
          properties:
            donationDeclarationPersonName:
              maxLength: 100
              type: string
              description: This is to track the name of person/s making the declaration.
            entityNameDonatedTo:
              maxLength: 100
              type: string
              description: >-
                This is to track the name of entity (if donation / gift not by
                an individual).
            ABNDonatedTo:
              maxLength: 20
              type: string
              description: >-
                This is to track the ABN (if donation / gift not by an
                individual).
            addressDonatedTo:
              maxLength: 250
              type: string
              description: >-
                This is to track the residential address of person or registered
                / official address of entity.
            donationDetails:
              type: array
              items:
                $ref: '#/components/schemas/Donation'
            politicalDonationsDeclaration:
              type: boolean
              description: This is to track the political donations declarations.
        isExemptFromSEPPNonResidential:
          type: boolean
          description: >-
            This is to track if the development is exempt from the State
            Environmental Planning Policy (Sustainable Buildings) 2022, Chapter
            3, relating to non-residential buildings.
        exemptFromSEPPNonResidentialReasons:
          type: array
          description: >-
            This is to track the reason for SBSEPP ( Sustainable Buildig state
            environmental planning policy) exemption which identifies the
            development involved. This is applicable when the development is
            exempt from SBSEPP (isExemptFromSEPPNonResidential=true). Please
            refer to the example values below 1. Development that is permitted
            with or without consent or is exempt or complying development under
            State Environmental Planning Policy (Exempt and Complying
            Development Codes) 2008 2. Development that is permitted with or
            without consent or is exempt or complying development under State
            Environmental Planning Policy (Resources and Energy) 2021, Chapter 2
            3. Development that is permitted with or without consent or is
            exempt or complying development under State Environmental Planning
            Policy (Transport and Infrastructure) 2021, Chapter 5 4. Development
            on land wholly in RU1, RU2, RU3, E5, IN3, C1, C2, C3, W1, W2, W3 or
            W4 5. Development for purposes of residential care facilities 6.
            Development that is wholly residential 7. A modification to a
            development application, where the original application was lodged
            before 1 October 2023 8. A modification or a review to a development
            application, or a review of determination, where the original
            application was submitted on the NSW Planning Portal before 1
            October 2023
          items:
            $ref: '#/components/schemas/exemptFromSEPPNonResidentialReasons'
        proposedDevSustainablityMeasures:
          type: array
          description: >-
            This is to track if the proposed development is designed to enable
            any of the sustainability measures. This is applicable when the
            development is not exempt from SBSEPP (
            isExemptFromSEPPNonResidential=false). Please refer to the example
            values below 1.The minimisation of waste from associated demolition
            and construction, including by the choice and reuse of building
            materials 2.A reduction in peak demand for electricity, including
            through the use of energy-efficient technology 3.A reduction in the
            reliance on artificial lighting and mechanical heating and cooling
            through passive design 4.The generation and storage of renewable
            energy 5.The metering and monitoring of energy consumption 6.The
            minimisation of the consumption of potable water 7.None of the above
          items:
            $ref: '#/components/schemas/proposedDevSustainablityMeasures'
        proposedDevSustainablityOtherDetails:
          type: string
          maxLength: 2000
          description: >-
            This is to capture any 'Other' reason entered by the applicant that
            are not listed under proposedDevSustainablityMeasures. This is
            applicable when the development is not exempt from SBSEPP
            (isExemptFromSEPPNonResidential= false).
        sustainabilityProvisionDocumentsDetails:
          type: string
          maxLength: 2000
          description: >-
            This is to track the list of any reports or documents that identify
            the general sustainability provisions. This is applicable when the
            development is not exempt from SBSEPP
            (isExemptFromSEPPNonResidential=false).
        isDevSeekingSustainabilityCertification:
          type: boolean
          description: >-
            This is to track if the development is seeking certification from a
            sustainability rating system. This is applicable when the
            development is not exempt from SBSEPP
            (isExemptFromSEPPNonResidential=false).
        devAchievesSustainabilityRatings:
          type: array
          description: >-
            This is to track the sustainability rating/s that will be achieved
            by the development. This is applicable when the development is not
            exempt from SBSEPP AND when the development is seeking certification
            from a sustainability rating system.
            (isExemptFromSEPPNonResidential=false &
            isDevSeekingSustainabilityCertification=true). Please refer to the
            example values below 1.NABERS Certification 2.Green Star Buildings
            Certification 3.Green Star Communities Certification 4.LEED
            Certification 5.Passive House Certification 6.Living Building
            Challenge Certification 7.Other
          items:
            $ref: '#/components/schemas/devAchievesSustainabilityRatings'
        devAchievesSustainabilityRatingOtherDetails:
          maxLength: 2000
          type: string
          description: >-
            This is to track any 'Other' reason which is not listed in the
            sustainability rating/s (devAchievesSustainabilityRatings). This is
            applicable when the development is not exempt from SBSEPP AND when
            the development is seeking certification from a sustainability
            rating system. (isExemptFromSEPPNonResidential=false &
            isDevSeekingSustainabilityCertification=true).
        developmentSustainabilityRatingLevel:
          type: string
          maxLength: 2000
          description: >-
            This is to track the star rating or sustainability level that will
            be acheived by the development. This is applicable when the
            development is not exempt from SBSEPP AND when the development is
            seeking certification from a sustainability rating system.
            (isExemptFromSEPPNonResidential=false &
            isDevSeekingSustainabilityCertification=true).
        embodiedEmissionsForNonResDevelopment:
          type: object
          properties:
            isNABERSFormAccompanied:
              type: boolean
              description: >-
                This is to track if the NABERS Embodied Emissions Materials Form
                accompany this application. This is applicable when the
                development is not exempt from SBSEPP
                (isExemptFromSEPPNonResidential=false).
            emissionsReportVerifierDetails:
              $ref: '#/components/schemas/emissionsReportVerifierDetails'
            isAgreementPreparedforLargeCommercialDevtype:
              type: boolean
              description: >-
                This is to track if a voluntary NABERS Agreement to Rate
                relating to embodied emissions has been prepared for each
                prescribed large commercial development type. This is applicable
                when the development is not exempt from SBSEPP
                (isExemptFromSEPPNonResidential=false).
            agreementPreparedforLCDevtypeDetails:
              type: string
              maxLength: 50
              description: >-
                This is to track details of all relevant Agreement(s) to Rate
                including reference number in the format AR-12345. This is
                applicable when the development is not exempt from SBSEPP and
                NABERSFormAccompanied (isExemptFromSEPPNonResidential=false &
                isAgreementPreparedforLargeCommercialDevtype = True).
        lowEmissionConstructionTechnologies:
          type: object
          description: >-
            This is to track the relevant Low Emissions Constuction Technologies
            attributes. This is applicable when the development is not exempt
            from SBSEPP ( isExemptFromSEPPNonResidential=false ).
          properties:
            description:
              type: string
              maxLength: 2000
              description: >-
                This is the description of any low emissions construction
                technologies incorporated in the development. This is applicable
                when the development is not exempt from SBSEPP (
                isExemptFromSEPPNonResidential=false ).
            isExistingBuildingReused:
              type: boolean
              description: >-
                This is to track if the development is designed to retain or
                reuse an existing building on site. This is applicable when the
                development is not exempt from SBSEPP (
                isExemptFromSEPPNonResidential=false)
            percentageOfTotalDevelopmentReused:
              type: string
              maxLength: 100
              description: >-
                This is to track what percentage of the total development has
                been re-used. This is applicable when the development is not
                exempt from SBSEPP and when the development is designed to
                reatin or reuse an existing building. (
                isExemptFromSEPPNonResidential=false & isExistingBuildingReused
                = true).
            isRecycledMaterialsUsed:
              type: boolean
              description: >-
                This is to track if the development is designed to use recycled
                materials from the site or elsewhere. This is applicable when
                the development is not exempt from SBSEPP
                (isExemptFromSEPPNonResidential=false)
            recycledMaterialsUsedDetails:
              type: string
              maxLength: 500
              description: >-
                This is to track the detailed description obtained from the
                applicant when the recycled materials have been used for
                development.
            isLifeCycleAnalysisPrepared:
              type: boolean
              description: >-
                This is to track if the whole of Life Cycle Analysis (LCA) been
                prepared for this development. This is applicable when the
                development is not exempt from SBSEPP
                (isExemptFromSEPPNonResidential=false).
        isPrescribedLCDMetTheCriteria:
          type: boolean
          description: >-
            This is to track if the development is a prescribed large commercial
            development that involves any of the consideration. This is
            applicable when the development is not exempt from SBSEPP
            (isExemptFromSEPPNonResidential=false). 1.Office premises with
            1000m2 net lettable area (NLA) or greater 2. Hotel or motel with 100
            rooms or greater 3. Serviced apartments with 100 apartments or
            greater.
        isNetZeroDevelopment:
          type: boolean
          description: >-
            This is to track if the development is designed to operate as a net
            zero development immediately. This is applicable when the
            development is not exempt from SBSEPP
            (isExemptFromSEPPNonResidential=false).
        isDevDesignedNotToUseFossilFuel:
          type: boolean
          description: >-
            This is to track if the developments the development is designed to
            Incorporate infrastructure, or space for the infrastructure
            necessary for the development to not use on-site fossil fuels after
            1 January 2035. This is applicable when 
            (isExemptFromSEPPNonResidential=false &
            isPrescribedLCDMetTheCriteria = true & isNetZeroDevelopment=false).
        netZeroProvisions:
          type: array
          description: >-
            This is to track the net zero provisions that the the development
            has incorporated.  This is applicable when
            (isExemptFromSEPPNonResidential= false &
            isPrescribedLCDMetTheCriteria = true). Please refer to the example
            values below 1. Electric HVAC system 2. Future plant space allocated
            3. Location of current plant room enables future conversion 4.
            Access to plant room enables machinery to be changed over 5.
            Electrified services and appliances 6. Renewable energy generation
            and storage 7. Other
          items:
            $ref: '#/components/schemas/netZeroProvisions'
        estimatedAnnualEnergyConsumption:
          type: integer
          description: >-
            This is to track the estimated annual energy consumption for the
            building in kWh/m2 metrics. This is applicable when
            (isExemptFromSEPPNonResidential= false &
            isPrescribedLCDMetTheCriteria = true)
        estimatedAnnualEnergyRelatedEmissions:
          type: integer
          description: >-
            This is to track estimated amount of emissions relating to energy
            use in the building, including direct and indirect emissions in
            kgCO2e/m2 p.a metrics. This is applicable when
            (isExemptFromSEPPNonResidential=false &
            isPrescribedLCDMetTheCriteria = true & isPrescribedLCDMetTheCriteria
            = true).
        water:
          type: object
          properties:
            isNABERSWaterRateAgreementsPrepared:
              type: boolean
              description: >-
                This is to track if NABERS Agreement(s) to Rate relating to
                water use has been prepared for each prescribed large commercial
                use in the development. This is applicable when
                (isExemptFromSEPPNonResidential=false &
                isPrescribedLCDMetTheCriteria = true)
            agreements:
              type: array
              description: >-
                This is to track details of the agreements when NABERS
                afreeements is prepared. (isExemptFromSEPPNonResidential=false &
                isPrescribedLCDMetTheCriteria = true &
                isNABERSWaterRateAgreementsPrepared = true)
              items:
                $ref: '#/components/schemas/Agreements'
        energy:
          type: object
          properties:
            preferredSectionJPathway:
              type: string
              description: >-
                This is to track the preferred Section J pathway for this
                development from the following pathways.This is applicable when
                (isExemptFromSEPPNonResidential=false &
                isPrescribedLCDMetTheCriteria = true ). Please find below
                example values. 1. J1V1 NABERS Energy 2. J1V2 Green Star 3. J1V3
                Verification using a reference building 4. J1V4 Verification of
                building envelope sealing
            isDevelopmentInCityOfSydneyLGA:
              type: boolean
              description: >-
                This is to track if development is in the City of Sydney Local
                Government Area. This is applicable when 
                (isExemptFromSEPPNonResidential=false &
                isPrescribedLCDMetTheCriteria = true ).
            isNABERSEnergyRateAgreementsPrepared:
              type: boolean
              description: >-
                This is to track if the NABERS Commitment Agreement(s) or
                Agreement(s) to Rate relating to energy have been prepared for
                each prescribed large commercial use in the development. This is
                applicable when (isExemptFromSEPPNonResidential=false &
                isPrescribedLCDMetTheCriteria = true & 
                isDevelopmentInCityOfSydneyLGA = false)
            agreements:
              type: array
              description: >-
                This is to track the energy agreements. This is applicable when
                (isExemptFromSEPPNonResidential=false &
                isPrescribedLCDMetTheCriteria = true & 
                isDevelopmentInCityOfSydneyLGA = false &
                isNABERSEnergyRateAgreementsPrepared = true )This is to track if
                the payer is an individual or a company.
              items:
                $ref: '#/components/schemas/Agreements'
        payerInformation:
          required:
            - billingAddress
            - payerType
          type: object
          properties:
            payerType:
              type: string
              description: >-
                This is to track if the payer is an individual or a company. One
                of the below mentioned values must be selected for payer type.
                1. individual 2. company
              example: Refer to description for values.
              minLength: 1
            billingAddress:
              maxLength: 250
              type: string
              description: This is to track the billing address of the payer.
              minLength: 1
            payerPerson:
              $ref: '#/components/schemas/Person'
            payerCompany:
              $ref: '#/components/schemas/payerCompany'
        isResend:
          type: boolean
          description: >-
            This is to track if application details are resent. True indicates a
            retriggered event.
        documents:
          type: array
          description: This block will be sending the full set of documents.
          items:
            $ref: '#/components/schemas/DownloadableDocument'
        declarations:
          type: array
          items:
            type: string
        updatedBy:
          $ref: '#/components/schemas/UpdatedBy'
    UpdateDA:
      required:
        - applicant
        - caseStatus
        - developmentSiteOwner
        - commonApplicationTypes
        - ownerDetails
        - siteAddresses
        - updatedBy
      type: object
      properties:
        caseStatus:
          maxLength: 80
          type: string
          description: Status of the DA case
          example: Pending Lodgement
          minLength: 1
        caseSubmittedDate:
          type: string
          description: >-
            This is to track the date when the applicant submitted the
            application.
        contributionDetails:
          type: array
          description: >-
            This is to track the infrastructure contribution's case details
            associated to the development
          items:
            $ref: '#/components/schemas/contributionDetails'
        applicant:
          $ref: '#/components/schemas/Applicant'
        developmentSiteOwner:
          type: string
          description: >-
            This is to track the development site owner type. One of the below
            mentioned values must be selected for development site owner type.
            1. APPLICANT_OWNED 2. MULTI_PLUS_APPLICANT 3. MULTI_EXCL_APPLICANT
            4. COMPANY_OWNED
          example: Refer to description for values.
          minLength: 1
        securityConditions:
          type: boolean
          description: >-
            This is to track whether there are any security or site conditions
            which may have impact on the person undertaking the inspection.
        detailsOfSecurityConditions:
          type: string
          description: >-
            This is to track the details of security conditions. Visible only if
            securityConditions is true.
        developerDetails:
          $ref: '#/components/schemas/developerDetails'
        ownerDetails:
          type: array
          items:
            $ref: '#/components/schemas/Owner'
        ownersConsentDeclaration:
          type: boolean
          description: This is to track the declaration done by applicant.
        applicationType:
          type: string
          description: >-
            This is to track the type of the application. One of the below
            mentioned values must be selected for the type of the application.
            1. DA 2. MODIFICATION 3. REVIEW
          example: Refer to description for values.
        councilDANumber:
          maxLength: 20
          type: string
          description: >-
            This is to track the unique council DA number. Required if the
            application has been accepted for lodgement by the council.
        modificationType:
          type: string
          description: >-
            This is to track the type of modification. Required if the
            applicationType is "Modification application". One of the below
            mentioned values must be selected for modification type. 1.
            MOD_MINOR 2. MOD_ENV_IMPACT 3. MOD_LEC 4. MOD_OTHERS
          example: Refer to description for values.
        originalDADeterminationDate:
          type: string
          description: This is to track the date when the original DA was determined.
        existingDANumber:
          maxLength: 20
          type: string
          description: >-
            This is to track the existing DA number upon which modification or
            review application is proposed. Required if the applicationType is
            MODIFICATION or REVIEW. This is applicable for the applications that
            are submitted offline ('When applicant answers 'No' to the question
            'Was the DA applied for via the NSW Planning portal')
        existingDADeterminationDate:
          type: string
          description: >-
            This is to track the existing DA determination date upon which
            review application is proposed. Required if the applicationType is
            Review. UI field is "Date of determination".
        proposedModificationDescription:
          maxLength: 1500
          type: string
          description: >-
            This is to track the existing DA determination date upon which
            modification application is proposed.Required if the applicationType
            is MODIFICATION.
        isExistingOnlineDA:
          type: boolean
          description: >-
            This is to track if the existing DA applied was via the NSW Planning
            Portal.
        existingOnlinePANNumber:
          type: string
          description: >-
            This is to track the portal application number (PAN). This is
            applicable for the applications that are submitted through planning
            portal ('When applicant answers 'Yes' to the question 'Was the DA
            applied for via the NSW Planning portal') for the application type 
            MODIFICATION or REVIEW.
        siteAddresses:
          type: array
          items:
            $ref: '#/components/schemas/Location'
        commonApplicationTypes:
          type: array
          items:
            $ref: '#/components/schemas/CommonApplicationType'
          description: >-
            This is to track the common Application types. Example values are 1.
            Advertising and signage 2. Alterations or additions to an existing
            building or structure 3. Change of use of land or a building or the
            classification of a building under the Building Code of Australia 4.
            Demolition 5. Erection of a new structure 6. Hours of operation and
            trading 7. Subdivision 8. Temporary building, structure or use
        developmentTypes:
          type: array
          items:
            $ref: '#/components/schemas/DevelopmentType'
        isDevelopmentIncludeAffordableHousing:
          type: boolean
          description: >-
            This is to track if the development includes affordable housing when
            applicable.
        isApplicationForInfillAffordableHousing:
          type: boolean
          description: >-
            This is to track if the application is submitted for infill
            affordable housing. This is applicable when
            'isDevelopmentIncludeAffordableHousing' is true.
        boardingHouseRegCommunityProviderName:
          maxLength: 512
          type: string
          description: >-
            This is to track the registered community housing provider who will
            be managing the boarding house.
        regCommunityHousingProviderName:
          maxLength: 512
          type: string
          description: >-
            This is to track the name of the registered community housing
            provider that will be managing the affordable housing component of
            the site. This is applicable for the development type "Boarding
            house" or when 'isDevelopmentIncludeAffordableHousing' is true.
        isBuildToRentHousing:
          type: boolean
          description: >-
            This is to track if the development is proposed to be build-to-rent
            housing when applicable.
        relevantEPI:
          type: array
          description: >-
            This is to track the relevant environmental planning instrument. eg.
            LEP, SEPP
          items:
            $ref: '#/components/schemas/RelevantEPIList'
        isPoolSpa40KlitersProposed:
          type: boolean
          description: >-
            This is to track if the pool is more than 40K in capacity. This is
            applicable for swimming pool development type.
        developmentDescription:
          maxLength: 1500
          type: string
        proposed24HrWork:
          $ref: '#/components/schemas/ScheduleWorkDay'
        numDwellingsUnitsProposed:
          type: integer
          description: >-
            This is to track the number of dwellings/units proposed when
            applicable.
        numStoreysProposed:
          type: integer
          description: This is to track the number of storeys proposed when applicable.
        numPreExistingDwellings:
          type: integer
          description: >-
            This is to track the number of pre-existing dwellings on site when
            applicable.
        numDwellingsDemolished:
          type: integer
          description: >-
            This is to track the number of dwellings to be demolished when
            applicable.
        numOfProposedOccupants:
          type: integer
          description: >-
            This attribute is obsolete. However, value for this attribute will
            be continued to be sent in the payload for the submitted cases prior
            to 30th May 2025. This is to track the maximum number of occupants
            or users that a building is designed to accommodate at any one time.
        numExistingFloorArea:
          type: integer
          description: >-
            This is to track the existing gross floor area (sqm) and when
            applicable.
        numProposedGrossFloorArea:
          type: integer
          description: >-
            This is to track the proposed gross floor area (sqm) when
            applicable.
        numExistingSiteArea:
          type: integer
          description: >-
            This is to track the total (existing) site area (sqm) and when
            applicable.
        totalNetLettableArea:
          type: integer
          description: >-
            This attribute is obsolete. However, value for this attribute will
            be continued to be sent in the payload for the submitted cases prior
            to 30th May 2025. This is to track the Net Lettable Area(NLA) which
            is the total area of all internal tenancies across all floors in a
            commerical building, excluding public access, building services,
            staff and cleaning areas.
        islowRentalDwellingLossDevelopment:
          type: boolean
          description: >-
            This is to track if the development results in a loss of low rental
            dwellings. This is applicable and mandatory for any development type
            that belongs to the residential category.
        isNaturalDisaster:
          type: boolean
          description: >-
            This is to track if this application is direct result of a matter
            declared by the government to be an emergency and/or a natural
            disaster (for example, an application for re-building a home
            destroyed by bushfire).
        costOfDevelopment:
          type: number
          description: This is to track the Estimated development cost, including GST.
        capitalInvestmentValue:
          type: number
          maxLength: 15
          description: >-
            This is to track the Estimated development cost. Previously, this
            field was capturing the Capital investment value.
        havemoreBASIX:
          type: boolean
          description: >-
            This is to track if the applicant has one or more BASIX certificates
            when applicable.
        basixCertificateNumbers:
          type: array
          items:
            $ref: '#/components/schemas/BasixCertificateList'
        numExistingLots:
          type: integer
          description: >-
            This is to track the number of existing lots. This is applicable
            when 'Subdivision' is one of the values for
            'commonApplicationTypes'.
        numProposedAdditionalJobs:
          type: integer
          description: >-
            This attribute is obsolete. However, value for this attribute will
            be continued to be sent in the payload for the submitted cases prior
            to 30th May 2025. This is to track the number of additional jobs
            that are proposed to be generated through the operation of the
            development when applicable.
        subdivisionTypes:
          type: array
          items:
            $ref: '#/components/schemas/SubdivisionType'
        devCategoryForParkingSpaces:
          type: array
          description: >-
            This is to track the number of parking spaces for application. If
            the development includes car share parking or other types of parking
            that are not easily defined, 'Other' value under the category
            development would be used.
          items:
            $ref: '#/components/schemas/devCategoryForParkingSpaces'
        numProposedLots:
          type: integer
          description: >-
            This is to track the number of proposed lots. This is applicable
            when 'Subdivision' is one of the values for
            'commonApplicationTypes'.
        numStaff:
          type: integer
          description: >-
            This is to track the number of proposed staff/employees when
            applicable.
        numParkingSpaces:
          type: integer
          description: >-
            This is to track the total number of parking spaces. This will
            contain the totals of the carParkingSpaces, motorCycleSpaces and
            biCycleSpaces provided in the application under the object (
            devCategoryForParkingSpaces ). This attribute will become obsolete
            in the upcoming releases. However, value for this attribute will be
            continued to be sent in the payload until the next major version
            release.
        numLoadingBays:
          type: integer
          description: This is to track the number of loading bays when applicable.
        isNewRoadProposed:
          type: boolean
          description: This is to track if new road is proposed.
        proposedRoadWorkDescription:
          maxLength: 1500
          type: string
        isStagedDevelopment:
          type: boolean
          description: >-
            This is to track if the development is a staged development or a
            concept only development.
        isConceptDevelopment:
          type: boolean
          description: >-
            This is to track if the development is a concept development only.
            This is applicable when (isStagedDevelopment = true).
        stagedDevelopmentDescription:
          maxLength: 1500
          type: string
          description: >-
            This is to track the description for the proposed concept
            application and/or the staging of the development. Applicable if
            'isConceptDevelopment' is true.
        climateZones:
          type: array
          description: >-
            This attribute is obsolete. This is to track for the development's
            location according to the guidelines set by the Australian Building
            Code Boards. Please refer to the example values below 1. Climate
            zone 1 – high humidity summer, warm winter 2. Climate zone 2 – warm
            humid summer, mild winter 3. Climate zone 3 – hot dry summer, warm
            winter 4. Climate zone 4 – hot dry summer, cool winter 5. Climate
            zone 5 – warm temperate 6. Climate zone 6 – mild temperate 7.
            Climate zone 7 – cool temperate 8. Climate zone 8 - alpine
          items:
            $ref: '#/components/schemas/climateZones'
        isClimateZoneImpactedDevDesign:
          type: boolean
          description: >-
            This attribute is obsolete. This is to track if the climate Zone has
            impacted the design of the development.
        climateZoneImpactedDevDesignReason:
          type: string
          maxLength: 500
          description: >-
            This attribute is obsolete. This is to track if this is a proposed
            crown development.
        isCrownDevelopment:
          type: boolean
          description: This is to track if this is a proposed crown development.
        crownDevelopmentNSWAgency:
          maxLength: 100
          type: string
        isSubjectToWildernessProtectionAgreement:
          type: boolean
          description: >-
            This indicates if the development on land which is subject to a
            wilderness protection agreement or conservation agreement within the
            meaning of the Wilderness Act 1987.
        isIntegratedDevelopment:
          type: boolean
        integratedDevelopmentTypes:
          type: array
          items:
            $ref: '#/components/schemas/IntegratedDevelopmentType'
        designatedDevelopment:
          type: boolean
        doesImpactHabitat:
          type: boolean
          description: >-
            This is to track if the threatened species, populations, ecological
            communities or their critical habitats are likely impacted with the
            development proposal.
        isBiodiversityCompliantDevelopment:
          type: boolean
          description: This is to track if the development is biodiversity compliant.
        reasonForBiodiversityDevelopment:
          type: string
          maxLength: 2000
          description: >-
            This is to track the reason, the development is biodiversity
            compliant. This is applicable, when the applicant chooses ‘Yes’ for
            the question ‘Is this application for biodiversity compliant
            development’.
        isSubjectToPrivateLandConservationAgreement:
          type: boolean
          description: >-
            This is to track if the application is subject to a private land
            conservation agreement under the Biodiversity Conservation Act 2016?
        doesVaryLEP:
          type: boolean
          description: >-
            This is to track if the application proposes a variation to a
            development standard in an environmental planning instrument (eg LEP
            or SEPP).
        LEPVariation:
          $ref: '#/components/schemas/LEPVariation'
        isApplicationVPA:
          type: boolean
          description: >-
            This is to track if the application accompanied by a Voluntary
            Planning Agreement (VPA).
        vpaDetails:
          type: array
          items:
            $ref: '#/components/schemas/VPADetail'
        actsApplicable:
          type: array
          description: >-
            This is to track the information about the specific Acts that apply
            to the application. This becomes applicable when threatened species,
            populations, ecological communities or their critical habitats are
            likely impacted with the development proposal ( when
            doesImpactHabitat is true ).
          items:
            $ref: '#/components/schemas/ActsApplicable'
        isLGAS68ApprovalReq:
          type: boolean
          description: >-
            This is to track if approval under S68 of the Local Government Act
            1993 is required.
        isTreeWorksReq:
          type: boolean
          description: This is to track if tree removal and/or pruning work is proposed.
        treeRemovalDescription:
          type: string
          description: >-
            This is to track the descripton for treeremoval. Visible only when
            IsTreeWorksReq is selected as true.
        areaImpacted:
          type: number
          description: >-
            This is to track the area which has got impacted. Visible only when
            IsTreeWorksReq is selected as true.
        impactedLandUnits:
          type: string
          description: >-
            This is to track the impacted land units if tree works are involved.
            Visible only when IsTreeWorksReq is slected as true.
          example: Refer to description for values.
        treesImpacted:
          type: number
          description: >-
            This is to track the number of trees impacted.Visible only when
            IsTreeWorksReq is selected as true.
        areaUnit:
          type: string
          description: >-
            This is to track the units of area.Visible only when IsTreeWorksReq
            is selected as true.
        areaOfCanopy:
          type: number
          description: >-
            This is to track the area of canopy.Visible only when IsTreeWorksReq
            is selected as true.
        isS68Applied:
          type: boolean
          description: >-
            This is to track if applicant applied for approval under S68 of the
            Local Government Act. Visible only when isS68LGActApprovalReq is
            selected as yes. If IsS68Applied selected as No then approval must
            be applied under s68 of the Local Government Act with the council.
        applyForApprovalUnderS68:
          type: boolean
          description: >-
            This is to track if approval is sought under S68 of the Local
            Government Act. Visible only when isS68Applied is selected as no.
            Upon application submission online, system will automatically create
            a draft Section 68 of the Local Government Act application form and
            submit to council.
        hasOnlines68Case:
          type: boolean
          description: >-
            This is to track if application for S68 is applied via NSW planning
            Portal or not. Visible only when isS68Applied is selected as yes.
        s68RefNumber:
          type: string
          description: >-
            This is to track the portal reference number. It is visible only
            when HasOnlines68Case is selected as yes.
        s68RelatedRefNo:
          type: string
          description: >-
            Used to select s68 reference number related to this application.
            Visible only when HasOnlines68Case is selected as no.
        doesIncludeHeritageArea:
          type: boolean
          description: >-
            This is to track if the development site included as an item of
            environmental heritage or sits within a heritage conservation area.
        doesIncludeHeritageBuilding:
          type: boolean
          description: >-
            This is to track if the work proposed includes any heritage listed
            buildings.
        doesIncludeHeritageTreeRemoval:
          type: boolean
          description: This is to track if heritage tree removal proposed.
        isApplicantCouncilMember:
          type: boolean
          description: >-
            This is to track if the applicant or owner is a staff member of the
            organisation assessing the application.
        applicantCouncilRoleDescription:
          maxLength: 1500
          type: string
          description: >-
            This is to track the description provided(name of person, role in
            council).
        isApplicantRelatedToCouncil:
          type: boolean
          description: >-
            This is to track if the applicant or owner have a relationship with
            any staff of the organisation assessing the application.
        applicantCouncilRelationDescription:
          maxLength: 1500
          type: string
          description: >-
            This is to track the description provided(name of person, role in
            council, relationship to the person).
        anyPoliticalDonation:
          type: boolean
          description: >-
            This is to track if the applicant is aware of any person who has
            financial interest in the application who has made a political
            donation or gift in the last two years.
        politicalDonation:
          type: object
          properties:
            donationDeclarationPersonName:
              maxLength: 100
              type: string
              description: This is to track the name of person/s making the declaration.
            entityNameDonatedTo:
              maxLength: 100
              type: string
              description: >-
                This is to track the name of entity (if donation / gift not by
                an individual).
            ABNDonatedTo:
              maxLength: 20
              type: string
              description: >-
                This is to track the ABN (if donation / gift not by an
                individual).
            addressDonatedTo:
              maxLength: 250
              type: string
              description: >-
                This is to track the residential address of person or registered
                / official address of entity.
            donationDetails:
              type: array
              items:
                $ref: '#/components/schemas/Donation'
            politicalDonationsDeclaration:
              type: boolean
              description: This is to track the political donations declarations.
        isExemptFromSEPPNonResidential:
          type: boolean
          description: >-
            This is to track if the development is exempt from the State
            Environmental Planning Policy (Sustainable Buildings) 2022, Chapter
            3, relating to non-residential buildings.
        exemptFromSEPPNonResidentialReasons:
          type: array
          description: >-
            This is to track the reason for SBSEPP ( Sustainable Buildig state
            environmental planning policy) exemption which identifies the
            development involved. Please refer to the example values below 1.
            Development that is permitted with or without consent or is exempt
            or complying development under State Environmental Planning Policy
            (Exempt and Complying Development Codes) 2008 2. Development that is
            permitted with or without consent or is exempt or complying
            development under State Environmental Planning Policy (Resources and
            Energy) 2021, Chapter 2 3. Development that is permitted with or
            without consent or is exempt or complying development under State
            Environmental Planning Policy (Transport and Infrastructure) 2021,
            Chapter 5 4. Development on land wholly in RU1, RU2, RU3, E5, IN3,
            C1, C2, C3, W1, W2, W3 or W4 5. Development for purposes of
            residential care facilities 6. Development that is wholly
            residential 7. A modification to a development application, where
            the original application was lodged before 1 October 2023 8. A
            modification or a review to a development application, or a review
            of determination, where the original application was submitted on
            the NSW Planning Portal before 1 October 2023
          items:
            $ref: '#/components/schemas/exemptFromSEPPNonResidentialReasons'
        proposedDevSustainablityMeasures:
          type: array
          description: >-
            This is to track if the proposed development is designed to enable
            any of the sustainability measures. This is applicable when the
            development is not exempt from SBSEPP (
            isExemptFromSEPPNonResidential=false). Please refer to the example
            values below 1.The minimisation of waste from associated demolition
            and construction, including by the choice and reuse of building
            materials 2.A reduction in peak demand for electricity, including
            through the use of energy-efficient technology 3.A reduction in the
            reliance on artificial lighting and mechanical heating and cooling
            through passive design 4.The generation and storage of renewable
            energy 5.The metering and monitoring of energy consumption 6.The
            minimisation of the consumption of potable water 7.None of the above
          items:
            $ref: '#/components/schemas/proposedDevSustainablityMeasures'
        proposedDevSustainablityOtherDetails:
          type: string
          maxLength: 2000
          description: >-
            This is to capture any 'Other' reason entered by the applicant that
            are not listed under proposedDevSustainablityMeasures. This is
            applicable when the development is not exempt from SBSEPP
            (isExemptFromSEPPNonResidential= false).
        sustainabilityProvisionDocumentsDetails:
          maxLength: 2000
          type: string
          description: >-
            This is to track the list of any reports or documents that identify
            the general sustainability provisions. This is applicable when the
            development is not exempt from SBSEPP(
            isExemptFromSEPPNonResidential=false).
        isDevSeekingSustainabilityCertification:
          type: boolean
          description: >-
            This is to track if the development is seeking certification from a
            sustainability rating system. This is applicable when the
            development is not exempt from SBSEPP
            (isExemptFromSEPPNonResidential=false).
        devAchievesSustainabilityRatings:
          type: array
          description: >-
            This is to track the sustainability rating/s that will be achieved
            by the development. This is applicable when the development is not
            exempt from SBSEPP AND when the development is seeking certification
            from a sustainability rating system.
            (isExemptFromSEPPNonResidential=false &
            isDevSeekingSustainabilityCertification=true). Please refer to the
            example values below 1.NABERS Certification 2.Green Star Buildings
            Certification 3.Green Star Communities Certification 4.LEED
            Certification 5.Passive House Certification 6.Living Building
            Challenge Certification 7.Other
          items:
            $ref: '#/components/schemas/devAchievesSustainabilityRatings'
        devAchievesSustainabilityRatingOtherDetails:
          type: string
          maxLength: 2000
          description: >-
            This is to track any 'Other' reason which is not listed in the
            sustainability rating/s (devAchievesSustainabilityRatings). This is
            applicable when the development is not exempt from SBSEPP AND when
            the development is seeking certification from a sustainability
            rating system. (isExemptFromSEPPNonResidential=false &
            isDevSeekingSustainabilityCertification=true).
        developmentSustainabilityRatingLevel:
          type: string
          maxLength: 2000
          description: >-
            This is to track the star rating or sustainability level that will
            be acheived by the development. This is applicable when the
            development is not exempt from SBSEPP AND when the development is
            seeking certification from a sustainability rating system.
            (isExemptFromSEPPNonResidential=false &
            isDevSeekingSustainabilityCertification=true).
        embodiedEmissionsForNonResDevelopment:
          type: object
          properties:
            isNABERSFormAccompanied:
              type: boolean
              description: >-
                This is to track if the NABERS Embodied Emissions Materials Form
                accompany this application. This is applicable when the
                development is not exempt from SBSEPP
                (isExemptFromSEPPNonResidential=false).
            emissionsReportVerifierDetails:
              $ref: '#/components/schemas/emissionsReportVerifierDetails'
            isAgreementPreparedforLargeCommercialDevtype:
              type: boolean
              description: >-
                This is to track if a voluntary NABERS Agreement to Rate
                relating to embodied emissions has been prepared for each
                prescribed large commercial development type. This is applicable
                when the development is not exempt from SBSEPP
                (isExemptFromSEPPNonResidential=false).
            agreementPreparedforLCDevtypeDetails:
              type: string
              maxLength: 50
              description: >-
                This is to track details of all relevant Agreement(s) to Rate
                including reference number in the format AR-12345. This is
                applicable when the development is not exempt from SBSEPP and
                NABERSFormAccompanied (isExemptFromSEPPNonResidential=false &
                isAgreementPreparedforLargeCommercialDevtype = True).
        lowEmissionConstructionTechnologies:
          type: object
          description: >-
            This is to track the relevant Low Emissions Constuction Technologies
            attributes. This is applicable when the development is not exempt
            from SBSEPP ( isExemptFromSEPPNonResidential=false ).
          properties:
            description:
              type: string
              maxLength: 2000
              description: >-
                This is the description of any low emissions construction
                technologies incorporated in the development. This is applicable
                when the development is not exempt from SBSEPP (
                isExemptFromSEPPNonResidential=false ).
            isExistingBuildingReused:
              type: boolean
              description: >-
                This is to track if the development is designed to retain or
                reuse an existing building on site. This is applicable when the
                development is not exempt from SBSEPP (
                isExemptFromSEPPNonResidential=false).
            percentageOfTotalDevelopmentReused:
              type: string
              maxLength: 100
              description: >-
                This is to track what percentage of the total development has
                been re-used. This is applicable when the development is not
                exempt from SBSEPP and when the development is resused. (
                isExemptFromSEPPNonResidential=false & isExistingBuildingReused
                = true).
            isRecycledMaterialsUsed:
              type: boolean
              description: >-
                This is to track if the development is designed to use recycled
                materials from the site or elsewhere. This is applicable when
                the development is not exempt from SBSEPP
                (isExemptFromSEPPNonResidential=false).
            recycledMaterialsUsedDetails:
              type: string
              maxLength: 500
              description: >-
                This is to track the detailed description obtained from the
                applicant when the recycled materials have been used for
                development.
            isLifeCycleAnalysisPrepared:
              type: boolean
              description: >-
                This is to track if the whole of Life Cycle Analysis (LCA) been
                prepared for this development. This is applicable when the
                development is not exempt from SBSEPP
                (isExemptFromSEPPNonResidential=false).
        isPrescribedLCDMetTheCriteria:
          type: boolean
          description: >-
            This is to track if the development is a prescribed large commercial
            development that involves any of the consideration. This is
            applicable when the development is not exempt from SBSEPP
            (isExemptFromSEPPNonResidential=false). 1.Office premises with
            1000m2 net lettable area (NLA) or greater 2. Hotel or motel with 100
            rooms or greater 3. Serviced apartments with 100 apartments or
            greater.
        isNetZeroDevelopment:
          type: boolean
          description: >-
            This is to track if the development is designed to operate as a net
            zero development immediately. This is applicable when the
            development is not exempt from SBSEPP
            (isExemptFromSEPPNonResidential=false).
        isDevDesignedNotToUseFossilFuel:
          type: boolean
          description: >-
            This is to track if the developments the development is designed to
            Incorporate infrastructure, or space for the infrastructure
            necessary for the development to not use on-site fossil fuels after
            1 January 2035. This is applicable when 
            (isExemptFromSEPPNonResidential=false &
            isPrescribedLCDMetTheCriteria = true & isNetZeroDevelopment=false).
        netZeroProvisions:
          type: array
          description: >-
            This is to track the net zero provisions that the the development
            has incorporated.  This is applicable when the development is not
            exempt from SBSEPP and when there is a netZero development
            (isExemptFromSEPPNonResidential=false &
            isPrescribedLCDMetTheCriteria = true). Please refer to the example
            values below 1. Electric HVAC system 2. Future plant space allocated
            3. Location of current plant room enables future conversion 4.
            Access to plant room enables machinery to be changed over 5.
            Electrified services and appliances 6. Renewable energy generation
            and storage 7. Other
          items:
            $ref: '#/components/schemas/netZeroProvisions'
        estimatedAnnualEnergyConsumption:
          type: integer
          description: >-
            This is to track the estimated annual energy consumption for the
            building in kWh/m2 metrics. This is applicable when
            (isExemptFromSEPPNonResidential=false &
            isPrescribedLCDMetTheCriteria = true).
        estimatedAnnualEnergyRelatedEmissions:
          type: integer
          description: >-
            This is to track estimated amount of emissions relating to energy
            use in the building, including direct and indirect emissions in
            kgCO2e/m2 p.a metrics. This is applicable when
            (isExemptFromSEPPNonResidential=false &
            isPrescribedLCDMetTheCriteria = true & isPrescribedLCDMetTheCriteria
            = true).
        water:
          type: object
          properties:
            isNABERSWaterRateAgreementsPrepared:
              type: boolean
              description: >-
                This is to track if NABERS Agreement(s) to Rate relating to
                water use has been prepared for each prescribed large commercial
                use in the development. This is applicable when
                (isExemptFromSEPPNonResidential=false &
                isPrescribedLCDMetTheCriteria = true)
            agreements:
              type: array
              description: >-
                This is to track the details of the agreements when NABERS
                agreeements is prepared. (isExemptFromSEPPNonResidential=false &
                isPrescribedLCDMetTheCriteria = true &
                isNABERSWaterRateAgreementsPrepared = true)
              items:
                $ref: '#/components/schemas/Agreements'
        energy:
          type: object
          properties:
            preferredSectionJPathway:
              type: string
              description: >-
                This is to track the preferred Section J pathway for this
                development from the following pathways.This is applicable when
                (isExemptFromSEPPNonResidential=false &
                isPrescribedLCDMetTheCriteria = true ). Please find below
                example values. 1. J1V1 NABERS Energy 2. J1V2 Green Star 3. J1V3
                Verification using a reference building 4. J1V4 Verification of
                building envelope sealing
            isDevelopmentInCityOfSydneyLGA:
              type: boolean
              description: >-
                This is to track if development is in the City of Sydney Local
                Government Area. This is applicable when 
                (isExemptFromSEPPNonResidential=false &
                isPrescribedLCDMetTheCriteria = true ).
            isNABERSEnergyRateAgreementsPrepared:
              type: boolean
              description: >-
                This is to track if the NABERS Commitment Agreement(s) or
                Agreement(s) to Rate relating to energy have been prepared for
                each prescribed large commercial use in the development. This is
                applicable when (isExemptFromSEPPNonResidential=false &
                isPrescribedLCDMetTheCriteria = true & 
                isDevelopmentInCityOfSydneyLGA = false)
            agreements:
              type: array
              description: >-
                This is to track the energy agreements. This is applicable when
                (isExemptFromSEPPNonResidential=false &
                isPrescribedLCDMetTheCriteria = true & 
                isDevelopmentInCityOfSydneyLGA = false &
                isNABERSEnergyRateAgreementsPrepared = true )
              items:
                $ref: '#/components/schemas/Agreements'
        payerInformation:
          required:
            - billingAddress
            - payerType
          type: object
          properties:
            payerType:
              type: string
              description: >-
                This is to track if the payer is an individual or a company. One
                of the below mentioned values must be selected for payer type.
                1. individual 2. company
              example: Refer to description for values.
              minLength: 1
            billingAddress:
              maxLength: 250
              type: string
              description: This is to track the billing address of the payer.
              minLength: 1
            title:
              type: string
              description: >-
                This attribute is obsolete. However, value for this attribute
                will be continued to be sent in the payload for the submitted
                cases prior to 30th May 2025. This is to track the title of the
                payer. This is applicable if the payer is an individual.
            payerPerson:
              $ref: '#/components/schemas/Person'
            payerCompany:
              $ref: '#/components/schemas/payerCompany'
        documents:
          type: array
          description: This block will be sending the full set of documents.
          items:
            $ref: '#/components/schemas/DownloadableDocument'
        deltaDocuments:
          type: array
          description: >-
            This block will be sending the delta documents uploaded or updated
            as part of update operation.
          items:
            $ref: '#/components/schemas/DownloadableDocument'
        declarations:
          type: array
          items:
            type: string
        determinationOutcome:
          type: string
          description: >-
            This is to track the determination outcome of the application. This
            is applicable for the UpdateDA which is emitted post determination.
        updatedBy:
          $ref: '#/components/schemas/UpdatedBy'
    BasixCertificateList:
      required:
        - basixCertificateNumber
      type: object
      properties:
        basixCertificateNumber:
          maxLength: 50
          type: string
          minLength: 1
    SubdivisionType:
      required:
        - subdivisionType
      type: object
      properties:
        subdivisionType:
          type: string
          description: >-
            This is to track the subdivision type.  This is applicable when
            'Subdivision' is one of the values for 'commonApplicationTypes'. 1.
            STRATA 2. COMMUNITY 3. TORRENS 4. STRATUM
          example: Refer to description for values.
          minLength: 1
    Donation:
      required:
        - donationDate
        - donationType
        - donationValue
        - personDonatedTo
      type: object
      properties:
        donationType:
          maxLength: 50
          type: string
          description: >-
            This is to track the type of donation(political donations or gifts
            declaration).
          minLength: 1
        personDonatedTo:
          maxLength: 100
          type: string
          description: >-
            This is to track the name of party or person for whose benefit the
            donation / gift was made.
          minLength: 1
        donationDate:
          type: string
          description: This is to track the date of benefit.
          format: date
          minLength: 1
        donationValue:
          type: number
          description: This is to track the donated value.
          format: decimal
    TagsList:
      type: string
      description: >-
        This defines Tags which are set on the respective document. like
        isPublish,isSensitive etc
    Location:
      required:
        - address
        - lga
      type: object
      properties:
        address:
          maxLength: 250
          type: string
          description: This is to track the address where the development is happening.
          example: 19-33 Elizabeth Street, Narrandera, 2700
          minLength: 1
        addressDetail:
          $ref: '#/components/schemas/AddressDetail'
        lotList:
          type: array
          items:
            $ref: '#/components/schemas/LotSectionPlan'
        lga:
          maxLength: 30
          type: string
          description: Local Government Area under which this application falls
          example: PENRITH
          minLength: 1
        isPrimary:
          type: boolean
          description: This is to track if the address is primary or not.
    LotSectionPlan:
      required:
        - lotsectionplan
      type: object
      properties:
        lotsectionplan:
          type: string
          example: 1/-/SPXXXXX
          minLength: 1
    AddressDetail:
      required:
        - latitude
        - longitude
        - postCode
        - state
        - streetName
        - suburb
      type: object
      properties:
        complexUnitType:
          type: string
        complexLevelType:
          type: string
        complexLevelNumber:
          type: string
        complexUnitIdentifier:
          type: string
        streetNumber1:
          type: string
        streetNumber2:
          type: string
        streetName:
          type: string
          minLength: 1
        streetSuffix:
          type: string
        streetType:
          type: string
        suburb:
          type: string
          minLength: 1
        latitude:
          type: number
        longitude:
          type: number
        wkid:
          type: string
        cadastralID:
          type: string
        gurasID:
          type: string
        primarySecondary:
          type: string
        state:
          type: string
          minLength: 1
        postCode:
          type: number
    OperationalConsent:
      required:
        - consentComments
        - updatedBy
        - dueDateForEvidenceAboutRelevantMatters
      type: object
      properties:
        caseStatus:
          type: string
          description: Status of the DA case
          maxLength: 80
        consentComments:
          maxLength: 2000
          type: string
          description: >-
            This is to track the request details captured as the Operational
            consent comments provided by the applicant.
          example: Complete
          minLength: 1
        dueDateForEvidenceAboutRelevantMatters:
          type: string
          description: This is to track the due date for evidence about relevant matters.
          minLength: 1
        documents:
          type: array
          items:
            $ref: '#/components/schemas/DownloadableDocument'
        updatedBy:
          $ref: '#/components/schemas/UpdatedBy'
    Person:
      required:
        - contactNumber
        - email
        - familyName
        - firstName
      type: object
      properties:
        firstName:
          maxLength: 20
          type: string
          minLength: 1
        otherName:
          maxLength: 20
          type: string
        familyName:
          maxLength: 20
          type: string
          minLength: 1
        contactNumber:
          maxLength: 10
          minLength: 8
          pattern: ^[0-9]+$
          type: string
        email:
          maxLength: 250
          type: string
          format: email
          minLength: 1
    payerCompany:
      required:
        - companyName
        - email
      type: object
      description: >-
        This is to track if the payer is a company, it captures company
        information.
      properties:
        companyName:
          maxLength: 20
          type: string
          description: >-
            This is to track the company name. Required field when payer is
            selected as company.
          minLength: 1
        ABN:
          maxLength: 20
          type: string
          description: >-
            This is to track the Australian Business Number (ABN) and it is an
            optional field when payer is selected as company. The Australian
            Business Number (ABN) is a unique 11 digit identifier issued to all
            entities registered in the Australian Business Register (ABR).
        ACN:
          maxLength: 20
          type: string
          description: >-
            This is to track the Australian Company Number (ACN) and it is an
            optional field when payer is selected as company. The Australian
            Company Number (ACN) is a nine digit number.
        tradingName:
          maxLength: 20
          type: string
          description: >-
            This is to track the trading name, it is an optional field when
            payer is selected as company.
        email:
          maxLength: 250
          type: string
          description: This is to track the email address.
          format: email
          minLength: 1
    Company:
      required:
        - companyName
      type: object
      properties:
        companyName:
          maxLength: 250
          type: string
          minLength: 1
        ABNorACN:
          maxLength: 20
          type: string
    ApplicantCompany:
      required:
        - companyName
      type: object
      properties:
        companyName:
          maxLength: 250
          type: string
          minLength: 1
        ABNorACN:
          maxLength: 20
          type: string
          description: >-
            This attribute is obsolete and has been replaced by 'ABN'&'ACN'
            attribute. However, this attribute will be continued to be received
            until the next major API release.
        ABN:
          maxLength: 20
          type: string
          description: This is to track the ABN. It should be 11-digit number.
        ACN:
          maxLength: 20
          type: string
          description: This is to track the ACN. It should be 9-digit number.
        tradingName:
          maxLength: 250
          type: string
          description: This is to track the trading name.
    Applicant:
      required:
        - address
        - applicantPerson
      type: object
      properties:
        title:
          type: string
          description: >-
            This attribute is obsolete. However, value for this attribute will
            be continued to be sent in the UpdatDA payload for the submitted
            cases prior to 30th May 2025. Salutation for the applicant. One of
            the below mentioned values must be selected for salutation for
            applicant. 1. Miss 2. Mr 3. Mrs 4. Ms
          example: Refer to description for values.
        applicantPerson:
          $ref: '#/components/schemas/Person'
        address:
          maxLength: 250
          type: string
          minLength: 1
        isApplyBehalfOfCompany:
          type: boolean
          description: Is applicant applying on behalf of a company
        applyOnBehalfCompany:
          $ref: '#/components/schemas/ApplicantCompany'
        nominatedCompanyApplicant:
          type: boolean
          description: >-
            This is to track the company which is nominated by the applicant for
            this application.
    Owner:
      type: object
      properties:
        isOwnerABuilder:
          type: boolean
          description: >-
            Required if Ownership is selected as 'There are one or more owners
            of the development site and I am NOT one of them' OR 'There are
            multiple owners of the development site and I am one of them'
        title:
          type: string
          description: >-
            Salutation for the Owner. One of the below mentioned values must be
            selected for salutation for Owner. 1. Miss 2. Mr 3. Mrs 4. Ms
          example: Refer to description for values.
        ownerPerson:
          $ref: '#/components/schemas/Person'
        ownerCompany:
          $ref: '#/components/schemas/Company'
        address:
          maxLength: 250
          type: string
          description: Owner's Address
          example: 19-33 Elizabeth Street, Narrandera, 2700
      description: This is to track if the owner is a person or company.
    DevelopmentOwnerCompanyDetails:
      type: object
      properties:
        legalName:
          maxLength: 150
          type: string
          description: This is to track the legal name of developer company.
        ABN:
          type: string
          description: This is to track the developer ABN. It should be 11-digit number.
        ACN:
          type: string
          description: This is to track the developer ACN. It should be 9-digit number
        tradingName:
          maxLength: 256
          type: string
          description: This is to track developer trading name.
      description: Test
    DeveloperAddress:
      type: object
      properties:
        fullAddress:
          maxLength: 250
          type: string
          description: This is to track developer address.
        emailAddress:
          maxLength: 250
          type: string
          description: >-
            This is to track developer trading email. Required if developer
            details are entered/selected.
    DevelopmentType:
      type: object
      properties:
        developmentType:
          maxLength: 200
          type: string
    contributionDetails:
      type: object
      properties:
        caseID:
          maxLength: 32
          type: string
          example: CON-5453
        status:
          maxLength: 32
          type: string
          example: In-progress
    ActsApplicable:
      type: string
      description: >-
        This is to track the acts that are applicable to the application.
        1.Biodiversity Conservation Act 2016 2.Fisheries Management Act 1994
      example: Refer to description for values
    CommonApplicationType:
      type: object
      properties:
        commonApplicationType:
          type: string
    RelevantEPIList:
      required:
        - relevantEPIValue
      type: object
      properties:
        relevantEPIValue:
          type: string
          description: >-
            This is to track the relevant environmental planning instrument(EPI)
            value.
          minLength: 1
        relevantSEPP:
          type: string
          description: >-
            This is to track the relevant SEPP. Applicable when State
            Environmental Planning Policy (SEPP) is selected.
        relevantLEP:
          type: string
          description: >-
            This is to track the relevant LEP. Applicable when Local
            Environmental Plan (LEP) is selected.
      description: >-
        This is to track the relevant environmental planning instrument. eg.
        LEP, SEPP.
    IntegratedDevelopmentType:
      required:
        - integratedDevelopmentType
      type: object
      properties:
        integratedDevelopmentType:
          type: string
          description: >-
            This is to track the type of integrated development. One of the
            below mentioned values must be selected for type of integrated
            development. 1. Coal Mine Subsidence Compensation Act 2017 2.
            Fisheries Management Act 1994 3. Heritage Act 1977 4. Mining Act
            1992 5. National Parks and Wildlife Act 1974 6. Petroleum (Onshore)
            Act 1991 7. Protection of the Environment Operations Act 1997 8.
            Roads Act 1993 9. Rural Fires Act 1997 10. Water Management Act 2000
          example: Refer to description for values.
          minLength: 1
    VPADetail:
      required:
        - vpaStatus
      type: object
      properties:
        vpaDescription:
          maxLength: 512
          type: string
        vpaStatus:
          type: string
          description: >-
            This is to track the status of Voluntary Planning Agreement(VPA).
            One of the below mentioned values must be selected for Voluntary
            Planning Agreement(VPA) status 1. PROPOSED 2. ON_EXHIBITION 3.
            EXECUTED
          example: Refer to description for values.
          minLength: 1
      description: >-
        This is to track the VPA details. It is applicable if 'isApplicationVPA'
        is true
    WorkDay:
      type: object
      properties:
        proposed24HrWork:
          type: boolean
          description: Either 24 hour work of specify start and end hours
        startWorkingHours:
          maxLength: 15
          type: string
          description: Applicable when proposed24HrWork is 'false'
          example: 09:30 AM
        endWorkingHours:
          maxLength: 15
          type: string
          description: Applicable when proposed24HrWork is 'false'
          example: 05:30 PM
      description: >-
        This is to track the work days. Applicable when 'isMonWorkDay' or
        'isTueWorkDay' or 'isWedWorkDay' or 'isThuWorkDay' or 'isFriWorkDay' or
        'isSatWorkDay' or 'isSunWorkDay' is 'true'
    ScheduleWorkDay:
      type: object
      properties:
        isMonWorkDay:
          type: boolean
        MonWorkDay:
          $ref: '#/components/schemas/WorkDay'
        isTueWorkDay:
          type: boolean
        TueWorkDay:
          $ref: '#/components/schemas/WorkDay'
        isWedWorkDay:
          type: boolean
        WedWorkDay:
          $ref: '#/components/schemas/WorkDay'
        isThuWorkDay:
          type: boolean
        ThuWorkDay:
          $ref: '#/components/schemas/WorkDay'
        isFriWorkDay:
          type: boolean
        FriWorkDay:
          $ref: '#/components/schemas/WorkDay'
        isSatWorkDay:
          type: boolean
        SatWorkDay:
          $ref: '#/components/schemas/WorkDay'
        isSunWorkDay:
          type: boolean
        SunWorkDay:
          $ref: '#/components/schemas/WorkDay'
      description: >-
        This attribute is obsolete. However, value for this attribute will be
        continued to be sent in the payload for the submitted cases prior to
        30th May 2025. This is to track the proposed hours of operation when
        applicable.
    DownloadableDocument:
      required:
        - documentName
        - documentType
        - documentURL
        - uploadedDateTime
      type: object
      properties:
        documentName:
          maxLength: 150
          type: string
          minLength: 1
        documentType:
          maxLength: 100
          type: string
          minLength: 1
        uploadedDateTime:
          type: string
          format: date-time
          minLength: 1
        documentURL:
          maxLength: 500
          type: string
          description: URL of the document to be downloaded
          format: uri
          minLength: 1
        documentCaseID:
          description: documentCaseID of respective document
          type: string
        documentTags:
          description: >-
            This defines documentTags which are set on the respective document..
            like isPublish,isSensitive.. etc..
          type: array
          items:
            $ref: '#/components/schemas/TagsList'
        documentSize:
          description: This indicates the file size of the document in bytes
          type: number
        updatedBy:
          type: string
          example: Council
    AdditionalInfo:
      required:
        - caseStatus
        - responseDate
        - updatedBy
      type: object
      properties:
        caseStatus:
          maxLength: 100
          type: string
          description: >-
            This is to track the status of the request for additional
            information.
          example: Complete
          minLength: 1
        childCaseID:
          type: string
          description: >-
            This is to track the additional information child case ID for
            requested additional information.
        responseDate:
          type: string
          description: >-
            This is to track date and time of response on additional information
            requested.
          format: date
          minLength: 1
        responseDetails:
          maxLength: 1500
          type: string
          description: >-
            This is to track additional information description provided by the
            applicant
        documents:
          type: array
          items:
            $ref: '#/components/schemas/DownloadableDocument'
        updatedBy:
          $ref: '#/components/schemas/UpdatedBy'
    LEPVariation:
      type: object
      properties:
        relevantEPIAddress:
          type: array
          description: This is to track the zone of the land.
          items:
            $ref: '#/components/schemas/RelevantEPIAddress'
        zoneObjectives:
          maxLength: 200
          type: string
          description: This is to track the objectives of the zone(s).
        developmentStandardVariations:
          type: array
          items:
            $ref: '#/components/schemas/DevelopmentStandardVariation'
        developmentDetails:
          type: array
          items:
            $ref: '#/components/schemas/DevelopmentDetails'
    RelevantEPIAddress:
      type: object
      properties:
        address:
          maxLength: 250
          type: string
          description: Address under - What is the zone of the land?
        landZone:
          maxLength: 100
          type: string
          description: Zone under - What is the zone of the land?
    DevelopmentStandardVariation:
      type: object
      properties:
        objectives:
          maxLength: 255
          type: string
        circumstances:
          maxLength: 500
          type: string
          description: >-
            This is to track how the compliance with the development standard(s)
            is unreasonable or unnecessary in the circumstances of this
            particular case.
        justification:
          maxLength: 500
          type: string
          description: >-
            This is to track if there are sufficient environmental planning
            grounds to justify variation of the development standard(s).
        otherInformation:
          maxLength: 500
          type: string
          description: >-
            This is to track if any other relevant information to be considered
            to justify variation of the development standard(s).
    devCategoryForParkingSpaces:
      required:
        - categoryOfDevelopment
      type: object
      properties:
        categoryOfDevelopment:
          type: string
          description: >-
            This is to track the Category of development 1. Residential
            accommodation 2. Commercial including business premises and retail
            premises 3. Industry 4. Other
          example: Refer to description for values.
          minLength: 1
        carParkingSpaces:
          type: integer
          description: >-
            This is to track the carParkingSpaces in the proposed online DA
            development.
        motorCycleSpaces:
          type: integer
          description: >-
            This is to track the number of motorCycleSpaces in the proposed
            online DA development.
        biCycleSpaces:
          type: integer
          description: >-
            This is to track the bicycleSpaces in the proposed online DA
            development.
      description: >-
        This is to track the number of parking spaces for application. If the
        development includes car share parking or other types of parking that
        are not easilyt defined, 'Other' value under the category development
        would be used.
    DevelopmentDetails:
      type: object
      properties:
        developmentStandardVaried:
          type: string
          description: >-
            This is to track the name of the development standard being varied.
            One of the below mentioned values must be selected for development
            standard varied. 1. Floor space ratio 2. Height 3. Lot Size 4. Other
          example: Refer to description for values.
        clauseNumber:
          type: string
          description: This is to track the clause number.
        devStandardNumberVaried:
          type: string
          description: This is to track the numeric value of the standard being varied.
        devStdPercentagePropVariation:
          type: number
          description: This is to track the percentage value of the standard being varied.
        devNumberAgainstStandard:
          type: string
          description: >-
            This is to track the numeric value of the development against this
            standard.
    Error:
      required:
        - errorCode
        - statusCode
      type: object
      properties:
        statusCode:
          type: integer
          example: 404
        message:
          type: string
          example: Internal Server error 19876
        activityId:
          type: string
          example: 00000011-0ab-xy00-0000-500000000000
        errorCode:
          type: string
          example: DPE_TMS01
          minLength: 1
        errorDetails:
          type: string
          example: Inner Exceptions, Stack Trace, etc
    developerDetails:
      type: object
      properties:
        ABN:
          type: string
          description: >-
            This is to track the Australian Business Number (ABN), which is an
            unique 11 digit identifier issued to all entities registered in the
            Australian Business Register (ABR). It should be 11-digit number.
        ACN:
          type: string
          description: >-
            This is to track the Australian Company Number (ACN), which is a
            nine digit number. It should be 11-digit number.
        companyName:
          maxLength: 250
          type: string
          description: This is to track the company name.
        tradingName:
          maxLength: 250
          type: string
          description: This is to track the trader's full name
        address:
          type: string
          description: This is to track the developer address.
        emailAddress:
          maxLength: 250
          type: string
          description: >-
            This is to track the email address which must be registered in the
            planning portal.
          example: john.smith@gmail.com
      description: This is to track the developer details.
    UpdatedBy:
      title: UpdatedBy
      type: object
      properties:
        person:
          $ref: '#/components/schemas/PersonBody'
    PersonBody:
      title: PersonBody
      required:
        - email
        - familyName
        - firstName
      type: object
      properties:
        firstName:
          maxLength: 20
          type: string
          example: John
          minLength: 1
        familyName:
          maxLength: 20
          type: string
          example: Smith
          minLength: 1
        email:
          maxLength: 250
          type: string
          description: >-
            This is to track the emaill address which must be registered in the
            planning portal
          example: john.smith@gmail.com
          minLength: 1
        contactNumber:
          maxLength: 10
          minLength: 8
          pattern: ^[0-9]+$
          type: string
    reassign:
      title: reassign
      required:
        - assignee
      type: object
      properties:
        assignee:
          $ref: '#/components/schemas/UpdatedBy'
    climateZones:
      description: >-
        This attribute is obsolete. Please refer to the example values below 1.
        Climate zone 1 – high humidity summer, warm winter 2. Climate zone 2 –
        warm humid summer, mild winter 3. Climate zone 3 – hot dry summer, warm
        winter 4. Climate zone 4 – hot dry summer, cool winter 5. Climate zone 5
        – warm temperate 6. Climate zone 6 – mild temperate 7. Climate zone 7 –
        cool temperate 8. Climate zone 8 - alpine
      type: object
      properties:
        climateZone:
          type: string
    exemptFromSEPPNonResidentialReasons:
      description: >-
        Please refer to the example values below 1. Development that is
        permitted with or without consent or is exempt or complying development
        under State Environmental Planning Policy (Exempt and Complying
        Development Codes) 2008 2. Development that is permitted with or without
        consent or is exempt or complying development under State Environmental
        Planning Policy (Resources and Energy) 2021, Chapter 2 3. Development
        that is permitted with or without consent or is exempt or complying
        development under State Environmental Planning Policy (Transport and
        Infrastructure) 2021, Chapter 5 4. Development on land wholly in RU1,
        RU2, RU3, E5, IN3, C1, C2, C3, W1, W2, W3 or W4 5. Development for
        purposes of residential care facilities 6. Development that is wholly
        residential 7. A modification to a development application, where the
        original application was lodged before 1 October 2023 8. A modification
        or a review to a development application, or a review of determination,
        where the original application was submitted on the NSW Planning Portal
        before 1 October 2023
      type: object
      properties:
        exemptFromSEPPNonResidentialReason:
          type: string
    proposedDevSustainablityMeasures:
      description: >-
        Please refer to the example values below 1.The minimisation of waste
        from associated demolition and construction, including by the choice and
        reuse of building materials 2.A reduction in peak demand for
        electricity, including through the use of energy-efficient technology
        3.A reduction in the reliance on artificial lighting and mechanical
        heating and cooling through passive design 4.The generation and storage
        of renewable energy 5.The metering and monitoring of energy consumption
        6.The minimisation of the consumption of potable water 7.None of the
        above
      type: object
      properties:
        proposedDevSustainablityMeasure:
          type: string
    devAchievesSustainabilityRatings:
      type: object
      description: >-
        Please refer to the example values below 1.NABERS Certification 2.Green
        Star Buildings Certification 3.Green Star Communities Certification
        4.LEED Certification 5.Passive House Certification 6.Living Building
        Challenge Certification 7.Other
      properties:
        devAchievesSustainabilityRating:
          type: string
    emissionsReportVerifierDetails:
      description: >-
        This is to track the details of the qualified person certifying the
        embodied emission amounts disclosed in the form. This is appicable when
        isExemptFromSEPPNonResidential=false & isNABERSFormAccompanied = true
      type: object
      properties:
        firstName:
          maxLength: 50
          type: string
        familyName:
          maxLength: 50
          type: string
        professionalQualification:
          description: >-
            Please find the sample values below 1. Architect or designer 2.
            Engineer 3. NABERS assessor 4. Quantity surveyor
          type: string
        registrationDetails:
          maxLength: 50
          type: string
        businessName:
          maxLength: 50
          type: string
        ABN:
          maxLength: 11
          type: string
    netZeroProvisions:
      description: >-
        Please refer to the example values below 1. Electric HVAC system 2.
        Future plant space allocated 3. Location of current plant room enables
        future conversion 4. Access to plant room enables machinery to be
        changed over 5. Electrified services and appliances 6. Renewable energy
        generation and storage 7. Other
      type: object
      properties:
        netZeroprovision:
          type: string
    Agreements:
      type: object
      properties:
        typeOfAgreement:
          type: string
          description: This is to track the type of Agreement.
        targetedStarRating:
          type: integer
          description: This is to track the targeted star rating.
        agreementReferenceNumber:
          type: string
          maxLength: 7
          description: This is to track the agreement reference Number.
  securitySchemes:
    apiKeyHeader:
      type: apiKey
      name: api-key
      in: header
    apiKeyQuery:
      type: apiKey
      name: subscription-key
      in: query
security:
  - apiKeyHeader: []
  - apiKeyQuery: []
